package org.dreamwork.jasmine2.engine;

import org.dreamwork.jasmine2.events.EventException;
import org.dreamwork.jasmine2.events.IDataBindListener;

/**
 * Created by IntelliJ IDEA.
 * User: seth
 * Date: 2009-1-30
 * Time: 22:53:21
 */
public interface IBindable {
    void setDataSource (Object dataSource);
    void setDataMember (String dataMember);
    void setValueField (String fieldName);

    void dataBind () throws Throwable;    

    void addDataBindEvent (IDataBindListener listener);
    void removeDataBindEvent (IDataBindListener listener);
    IDataBindListener[] getDataBindEvents ();
    void fireDataBindEvents () throws EventException;
}
